<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
    <head>
        <meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8"/>
        <title>Ruby/DBI - Direct database access layer for Ruby</title>
        <link rel="stylesheet" type="text/css" href="ruby-dbi.css"/>
    </head>
    <body>
        <div class="body-container">
            <h1>Ruby/DBI - Development Information</h1>
            <div class="main-container">
                <div class="nav-container">
                    <h1>Links</h1>
                    <a href="index.html">Home</a>
                    <a href="http://rubyforge.org/projects/ruby-dbi">RubyForge Project</a>
                    <a href="http://ruby-dbi.rubyforge.org/rdoc/index.html">RDoc</a>
                    <a href="development.html">Developer Information</a>
                    <a href="http://www.kitebird.com/articles/ruby-dbi.html">Ruby/DBI Tutorial</a>
                    <a href="contact.html">Contact/Reporting Bugs</a>
                </div>
                <p>
                    Regarding patches, please consider these issues:
                    <br />
                    <ul>
                        <li>
                            If your patch does not contain tests, it better be
                            very compelling, as someone else will be forced to
                            write them.
                        </li>
                        <li>
                            Please ensure your patch addresses the whole
                            problem space. If it's a patch for DBI, makes sure it
                            works with <b>all</b> DBDs. Likewise, if it is DBD
                            scope, it should handle all versions of the database
                            that DBD supports.
                        </li>
                        <li>
                            Please follow the existing formatting in the
                            files. Check your diffs to see that you aren't
                            generating patches with tons of formatting-only
                            changes.
                        </li>
                        <li>
                            If you plan a series of patches, consider setting
                            up a git repository, or merging your patches before
                            you submit them.
                        </li>
                    </ul>
                    <br />
                </p>
                <p>
                    Regarding bug reports, please consider these issues:
                    <br />
                    <ul>
                        <li>
                            Use the tracker if you can. Posting to the lists or
                            a private email is ok, but if it's multipart or
                            significantly complex you may be asked to post it
                            to the tracker anyways.
                        </li>
                        <li>
                            Please search the tracker first, and have a
                            repeatable use case that accurately describes your
                            problem.
                        </li>
                        <li>
                            If you post to the tracker, have a rubyforge
                            account and ensure you're logged in. If you don't,
                            and questions to need to be asked, your bug will
                            likely be quickly round-filed.  Our tracker is not
                            your cathartic dumping ground.
                        </li>
                    </ul>
                <p>
                If you'd like to contact us to report a bug or submit a patch,
                please use the <a
                    href="http://rubyforge.org/tracker/?group_id=234">tracker</a>
                on RubyForge. If you plan long term development, consider
                setting up a git repository other developers can pull from.
                </p>

                <p>
                    Please see the <a href="contact.html">contact</a> page
                    about contacting developers or mailing lists.
                </p>

                <p>
                    We now use 'git' for our revision control system. We now push
                    to several locations:

                    <dl>
                        <dt>Rubyforge</dt>
                        <dd>git://rubyforge.org/ruby-dbi.git</dd>
                        <dt>GitHub</dt>
                        <dd>git://github.com/erikh/ruby-dbi.git</dd>
                        <dt>hollensbe.org</dt>
                        <dd>git://hollensbe.org/git/ruby-dbi.git</dd>
                    </dl>
                    <br />

                    Forward development occurs in the 'development' branch,
                    which is version-tagged and merged into 'master' at release
                    time. 'master' is used to track release versions and
                    maintenance to those versions.
                </p>

                <p>
                    Ruby/DBI is a BSD-licensed product. As a result, the
                    licensing on your patches must be the same. Please do
                    not send patches that are of any other license. Thanks!
                </p>
            </div>
            <br />
            <br />
            <div class="copyright">
                &copy;2008 Erik Hollensbe, all rights reserved. Please see the
                README file for the full copyright notice.  Please see the
                LICENSE file in the source package for information on
                redistributing the source or any of the site content.
            </div>
        </div>
    </body>
</html>
